Gaming machine and methods of operating gaming machines

ABSTRACT

A gaming machine is described herein. The gaming machine includes a processor programmed to execute an algorithm including the steps of initiating an instance of a game by randomly selecting a reel set from a plurality of reel sets including a group of adjacent coupled reels that spin and stop together. The group of adjacent coupled reels includes a variable symbol position group that extends across each of the adjacent coupled reels. The processor randomly selects a special symbol to display in the variable symbol position group. The processor then selects an oversized symbol associated with the special symbol and animates the plurality of reels to spin and stop such that the group of adjacent coupled reels spins and stops together and the oversized symbol is displayed overlaying the variable symbol position group.

CROSS REFERENCE TO RELATED APPLICATION

This application claims priority to U.S. Provisional Patent ApplicationSer. No. 63/143,292, filed Jan. 29, 2021, the disclosure of which ishereby incorporated by reference in its entirety.

TECHNICAL FIELD

The present invention relates to gaming machines and control methods foroperating gaming machines.

BACKGROUND ART

A gaming machine represented by a slot machine is highly popular amongcasino customers as a device that provides gaming that is easy to enjoy,and recent statistics report that sales from gaming machines account forthe majority of casino earnings. Initial slot machines were simpledevices, wherein an inserted coin is received, a configured reel rotatesand stops mechanically according to a handle operation, and a win or aloss is determined by a combination of symbols stopped on a single payline. However, recent gaming machines, such as mechanical slot machinesdriven by a highly accurate physical reel via a computer controlledstepping motor, video slot machines that display a virtual reel on adisplay connected to a computer, and various gaming machines that applysimilar technology to other casino games are quickly advancing. For themanufacturers that develop these gaming machines, an important theme isto provide an attractive game that strongly attracts casino customers asplayers and improves the functionality of the gaming machine.

The present invention solves one or more of the problems identifiedabove.

SUMMARY OF THE INVENTION

In one aspect of the present invention, a gaming machine is provided.The gaming machine includes a cabinet, a display device mounted to thecabinet, and a control unit operably coupled to the display device. Thecontrol unit includes a processor programmed to execute an algorithmincluding the steps of displaying a game screen on the display deviceincluding a plurality of reels, with each reel displaying a plurality ofsymbols, and initiating an instance of the game by randomly selecting areel set from a plurality of reel sets. The selected reel set includes agroup of adjacent coupled reels that spin and stop together. The groupof adjacent coupled reels includes a variable symbol position group thatextends across each of the adjacent coupled reels. The variable symbolposition group includes adjacent columns of variable symbol positionsand at least two adjacent rows of variable symbol positions. Theprocessor randomly selects a special symbol to display in the variablesymbol position group. The special symbol is displayed in each variablesymbol position of the variable symbol position group. The processorthen selects an oversized symbol associated with the special symbol andanimates the plurality of reels to spin and stop such that the group ofadjacent coupled reels spins and stops together and the oversized symbolis displayed overlaying the variable symbol position group.

In another aspect of the present invention, a method of operating agaming machine is provided. The gaming machine includes a cabinet, adisplay device mounted to the cabinet, and a processor operably coupledto the display device. The method includes the processor performing analgorithm including the steps of displaying a game screen on the displaydevice including a plurality of reels, with each reel displaying aplurality of symbols, and initiating an instance of the game by randomlyselecting a reel set from a plurality of reel sets. The selected reelset includes a group of adjacent coupled reels that spin and stoptogether. The group of adjacent coupled reels includes a variable symbolposition group that extends across each of the adjacent coupled reels.The variable symbol position group includes adjacent columns of variablesymbol positions and at least two adjacent rows of variable symbolpositions. The processor randomly selects a special symbol to display inthe variable symbol position group. The special symbol is displayed ineach variable symbol position of the variable symbol position group. Theprocessor then selects an oversized symbol associated with the specialsymbol and animates the plurality of reels to spin and stop such thatthe group of adjacent coupled reels spins and stops together and theoversized symbol is displayed overlaying the variable symbol positiongroup.

In another aspect of the present invention, a non-transitorycomputer-readable storage media having computer-executable instructionsembodied thereon to operate a gaming machine is provided. The gamingmachine includes a cabinet, a display device mounted to the cabinet, anda processor operably coupled to the display device. When executed by theprocessor the computer-executable instructions cause the processor toperform an algorithm including the steps of displaying a game screen onthe display device including a plurality of reels, with each reeldisplaying a plurality of symbols, and initiating an instance of thegame by randomly selecting a reel set from a plurality of reel sets. Theselected reel set includes a group of adjacent coupled reels that spinand stop together. The group of adjacent coupled reels includes avariable symbol position group that extends across each of the adjacentcoupled reels. The variable symbol position group includes adjacentcolumns of variable symbol positions and at least two adjacent rows ofvariable symbol positions. The processor randomly selects a specialsymbol to display in the variable symbol position group. The specialsymbol is displayed in each variable symbol position of the variablesymbol position group. The processor then selects an oversized symbolassociated with the special symbol and animates the plurality of reelsto spin and stop such that the group of adjacent coupled reels spins andstops together and the oversized symbol is displayed overlaying thevariable symbol position group.

BRIEF DESCRIPTION OF DRAWINGS

Non-limiting and non-exhaustive embodiments of the present invention aredescribed with reference to the following figures. Other advantages ofthe present disclosure will be readily appreciated, as the same becomesbetter understood by reference to the following detailed descriptionwhen considered in connection with the accompanying drawings wherein:

FIG. 1A is a perspective view of a gaming machine, according to anembodiment of the present invention;

FIGS. 1B-1G are perspective views of the gaming machine, according toother embodiments of the present invention;

FIG. 2 is a functional block diagram of the gaming machine in FIGS.1A-1D;

FIG. 3 is an illustration of a game displayed on a display area of thegaming machine, according to an embodiment of the present invention;

FIG. 4 is an illustration of virtual reels that may be used with thegame shown in FIG. 3, according to an embodiment of the presentinvention;

FIGS. 5-8 are block diagrams of a game control unit that may be usedwith to perform the function of executing a game on the gaming machine;

FIG. 9 is a functional block diagram of a server computer system,according to an embodiment of the present invention;

FIG. 10 is a front view of a mobile computing device that may be usedwith the server computer system of FIG. 9;

FIG. 11 is an illustration of exemplary reel strip data file for use ingenerating virtual reels shown in FIG. 4 with symbol arrangementsshowing the order of symbols displayed on the display area of the game,according to an embodiment of the present invention;

FIG. 12 is an illustration of a reel stop position data file that may beused to execute the game, according to an embodiment of the presentinvention;

FIG. 13 is an illustration showing one example of a pay line set on thedetermination area of the game;

FIG. 14 is a flow chart illustrating an algorithm used during operationof the gaming machine and/or the mobile computing device to execute thegame, according to one embodiment of the present invention;

FIG. 15 is a flow chart illustrating another algorithm used duringoperation of the gaming machine and/or the mobile computing device toexecute the game, according to one embodiment of the present invention;

FIGS. 16-18 are illustrations of data files that may be used to executethe algorithm shown in FIG. 15; and

FIGS. 19-23 are exemplary illustrations of game screens illustrating thealgorithm shown in FIG. 15.

Corresponding reference characters indicate corresponding partsthroughout the drawings.

DETAILED DESCRIPTION OF EMBODIMENTS

With reference to the drawings and in operation, the present inventionis directed towards a gaming machine, a control method for a gamingmachine, and a program for a gaming machine and/or mobile computingdevice that provides a game to a player. The gaming machine according tothe present embodiment, receives a predetermined game value from theplayer, generates a game result, and provides a payout to the playeraccording to the game result and one or more pay tables. The gamingmachine includes a gaming cabinet that includes a display device and auser input device. The display device includes a display configured todisplay computer generated graphics. The user input device includes aplurality of input buttons that allows a player to initiate game playand interact with video images being displayed on the display device.The gaming machine includes a control unit having a computer processorthat is programmed generate and display a structured graphic userinterface displayed on the display device using computer generatedgraphics. The structure graphic user interface includes a plurality ofvirtual reels displaying game symbols within a grid. The control unit isalso programmed to animate the virtual reels to simulate spinning thevirtual through the grid and stop the virtual reels to reveal an outcomeof a game. The control unit is also programmed to generate and presentadditional computer animations in specific animated sequences to displaybonus features associated with the game.

Referring to FIGS. 1A-1D, in the illustrated embodiment, the gamingmachine 10 includes a cabinet 12 providing a display unit 14 and acontrol panel 16 and may also house a player tracking or ranking unit18. The cabinet 12 also houses a game control unit 20 (see FIG. 2) thatcontrols each part (see below). The control unit 20 also implements arandom number generator (RNG) that is used during operation of the game.Each configuration is described below.

The display unit 14 may be liquid crystal display devices and/or organicEL display devices and the like, and by controlling via each controlunit 20, the display area mentioned below functions as a display unit 14provided to the player. In some embodiments, the display unit 14 mayinclude an upper display 22 and a lower display 24. As shown FIGS. 1A,1F, and 1G, in some embodiments, the upper and lower displays 22, 24 areshown on a single display device. In other embodiments, as shown inFIGS. 1B-1E, the upper and lower displays 22, 24 may be shown onmultiple display devices.

Speakers 26 are provided on the left and right of the cabinet 12, and bycontrolling via the control unit 20, sound is provided to the player. Onthe control panel 16, a bill/ticket identification device 28, a printerdevice 30, and an operation unit 32 are provided.

The player tracking unit 18 may be housed on the center of the frontsurface of the cabinet 12 below the display unit 14. The player trackingunit 18 has a card reader that recognizes a player identification card,a display that presents data to the player, and a keypad that receivesinput by the player. This type of player tracking unit 18 readsinformation recorded on the player identification card inserted by theplayer into the card reader and displays the information and/orinformation acquired by communicating with the external system on thedisplay, by cooperatively operating with the control unit 20 mentionedbelow or an external system. Further, input from the player is receivedby the keypad, the display is changed according to the input, andcommunication with the external system is carried out as necessary.

The bill/ticket identification device 28 is disposed on the controlpanel 16 in a state where the insertion opening that a bill/ticket isinserted into is exposed, an identification part that identifies abill/ticket by various sensors on the inside of the insertion opening isprovided, and a bill/ticket storage part is provided on the outgoingside of the identification part. The bill/ticket identification device28, receives and identifies bills/tickets (including vouchers andcoupons) that are the game value as a game executing value, and notifiesthe control unit 20 mentioned below.

The printer device 30 is disposed on the control panel 16 in a statewhere the ticket output opening that a ticket is output from is exposed,a printing part that prints predetermined information on a printingpaper on the inside of the ticket output opening is provided, and ahousing part that houses the printing paper inside the paper inlet sideof the printing part is provided. The printer device 30, under thecontrol of the control unit 20 mentioned below, prints information onpaper and outputs a ticket according to credit payout processing fromthe gaming machine 10. The output ticket can use the payout credit asgame play by being inserted into the bill/ticket identification device28 of another gaming machine or can be exchanged for cash by a kioskterminal inside of the casino or a casino cage.

The operation unit 32 receives the operation of the player. Theoperation unit 32 includes a group of buttons 34 that receives variousinstructions from the player on the gaming machine 10. The operationunit 32, for example, may include a spin button and a group of settingbuttons. The spin button receives an instruction to start (startrotating the reel) an instance of the game. The group of setting buttons34 includes a group of bet buttons, a denomination button, a group ofline-designation buttons, a max bet button, and a payout button and thelike. The group of bet buttons receives an instruction operationregarding the bet amount of credits (bet number) from the player. Thegroup of line-designation buttons receive an instruction operation thatdesignate a pay line subjected to a line judgment below from the player.The max bet button receives an instruction operation regarding the betof the maximum amount of credits that can be bet at one time from theplayer. The payout button receives an instruction operation instructinga credit payout accumulated in the gaming machine 10. The gaming machine10 also includes illumination devices 36 that provides decorativelighting to the gaming machine 10.

In one embodiment, the control panel 16 includes a plurality of userinput devices that may include an acceptor device which accepts mediaassociated with a monetary value to establish a credit balance, avalidator configured to identify the physical media, a cash-out buttonactuatable to cause an initiation of a payout associated with the creditbalance. The acceptor device may include a touchscreen displayassociated with the display unit 14 and/or the player tracking unit 18,the bill/ticket identification device 28, the operation unit 32, theplayer tracking unit 18, a coin slot, a ticket in ticket out (TITO)system, a bill acceptor, and/or any suitable device that enables thegaming machine 10 to receive media associated with a monetary value andestablish a credit balance for use in playing the gaming machine 10. Inone embodiment, the acceptor device may be configured to receivephysical media such as, for example, a coin, a medal, a ticket, a card,a bill, currency, and/or any suitable physical media that enables thegaming machine 10 to function as described herein. The acceptor devicemay also be configured to accept virtual media such as, for example, aplayer tracking account, a virtual credit balance, reward points, gamingcredits, bonus points, and/or any suitable virtual media that enablesthe gaming machine 10 to function as described herein.

For example, in one embodiment, the coin slot may include an openingthat is configured to receive coins and/or tokens deposited by theplayer into the gaming machine 10. The control unit 20 converts a valueof the coins and/or tokens to a corresponding amount of gaming creditsthat are used by the player to wager on games played on the gamingmachine 10. The bill acceptor may include an input and output devicethat is configured to accept a bill, a ticket, and/or a cash card intothe bill acceptor to enable an amount of gaming credits associated witha monetary value of the bills, ticket, and/or cash card to be creditedto the gaming machine 10. In one embodiment, the bill acceptor alsoincludes a printer (not shown) that is configured to dispense a printedvoucher ticket that includes information indicative of an amount ofcredits and/or money paid out to the player by the gaming machine 10during a gaming session. The voucher ticket may be used at other gamingdevices, or redeemed for cash, and/or other items as part of a casinocashless system.

FIG. 2 shows a functional block diagram of the gaming machine 10,according to the present embodiment. The gaming machine 10 provides thecontrol unit 20. Within the cabinet 12, control unit 20 includes acontrol board equipped with a central processing unit 38 (abbreviated asCPU below) including a processor, an interface unit (or part) 40, amemory device including a memory 42 and a storage 44, and the like areincorporated. The control board is configured so that communication ispossible through the interface unit 40 and each of the componentsequipped on the cabinet 12. The CPU 38 controls the operation of eachcomponent by executing the program recorded in the memory 42 or thestorage 44 of the CPU 38 and provides a game to the player. The functionof the CPU 38 is to execute and display the game on the display unit 14of the gaming machine 10.

The control unit 20 is configured as the interface unit 40 including achip set providing communication functions of the CPU 38, a memory busconnected to a CPU 38, various expanding buses, serial interfaces, USBinterfaces, Ethernet (registered trademark) interfaces and the like, anda computer unit where the CPU 38 provides the addressable memory 42 andthe storage 44 through the interface unit 40. The memory 42 can beconfigured to include RAM that is a volatile storage medium, ROM that isa nonvolatile storage medium, and EEPROM that is a rewritablenonvolatile storage medium. The storage 44 provides the control unit 20as an external storage device function, can use reading devices such asa memory card that is a removable storage medium, and a magneto opticaldisk and the like, and can use hard disks.

On the interface unit 40, in addition to the CPU 38, the memory 42, andthe storage 44, a bill/ticket identification unit controller 46, aprinter unit controller 48, the player tracking unit 18, a graphiccontroller 50, an input controller 52, and a sound controller 54 areconnected. That is, the control unit 20 is connected to the operationunit 32 through the input controller 52 and connected to the displayunit 14 through the graphic controller 50. Further, when illuminationdevices 36 that provides decorative lighting to the gaming machine 10 isprovided, the illumination is controlled under the control of thecontrol unit 20 on the interface unit 40, and an illumination controller56 that controls the illumination devices 36 to provide a decorativelighting effect may be connected.

The control unit 20, which includes memory 42 and storage 44, controlseach part by executing a program stored in the memory 42 and the storage44, and provides a game to the player. Here, for example, the memory 42and storage 44 may be configured to store a program and data of anoperating system and subsystem that provide the basic functions of thecontrol unit 20 to the EEPROM of the memory 42 and stores a program anddata of an application that provides a game to the storage 44. Accordingto such a configuration, it can be easy to change or update a game byreplacing the storage 44. Further, the control unit 20 may be amultiprocessor configuration that has a plurality of CPUs.

Each block connected to the control unit 20 is described below. Thebill/ticket identification unit controller 46 operates the bill/ticketidentification device 28 to receive bills/tickets in the insertionopening and notifies the control unit 20 of identifying informationcorresponding to the assortment of bills or the payout processing ofcredits. The bill/ticket identification unit controller 46 notifies theinformation to the control unit 20, and the control unit 20 increasesthe usable credit amount inside of the game according to the notifiedcontent. The printer unit controller 48 corresponds to the printerdevice 30, and under the control of the control unit 20 that receives anoperation of the payout button of the group of setting buttons 34,information corresponding to the credit payout processing from thegaming machine 10 is printed and output on a printed ticket.

The player ranking (or tracking unit) unit 18 cooperatively operateswith the control unit 20 and sends and receives information and the likeof the player from the casino management system. The graphic controller50 controls the display unit 14, under the control of the control unit20, and displays a display image that includes various graphic data. Thesound controller 54 drives the speakers 26 under the control of thecontrol unit 20, and provides various sounds such as an announcement,sound effects, BGM and the like.

Further, the interface unit 40, has various communication interfaces forcommunicating with the exterior of the gaming machine 10, for examplethe interface unit 40 can communicate with an external network byEthernet 58, 60, and a serial interface 62. In the present embodiment,one example shows when there is communication between a well-knownserver-side gaming network 58 (Server Based Gaming), a G2S network 60(Game to System), and a slot information system 62 (Slot Data System),respectively.

FIG. 3 schematically shows a display area 64 provided by the gamingmachine 10. Such a display area 64 is displayed on the display unit 14(the upper display 22 and/or the lower display 24) by the control unit20 executing a predetermined program. In the illustrated embodiment, thedisplay area 64 is displayed on the lower display 24. For instance, asshown, during a game, the upper display 22 may be utilized to displaygame related information, e.g., game title information and/or graphics.

In one aspect of the present invention, the control unit 20 executes agame execution program to provide a game 66 that includes a primary game68 and one or more bonus feature events. The control unit 20 displays agame screen within the display area 64 that includes the primary game 68and the bonus feature events. In the illustrated embodiment, the primarygame 68 and the bonus feature events are displayed on the lower display24. The upper display 22 may be used to display animations and/or gameidentifying information during the game and/or during an attract mode.Further, the lower display 24 may display a decorative area, and an areathat displays credit amount, bet number, and a credit amount obtained bywinning (WIN number) and the like. In another embodiment, the primarygame 68 may be displayed in the lower display 24 and the bonus featureevents may be displayed in the upper display 22.

In the illustrated embodiment, the primary game 68 includes a video slotgame using a plurality of virtual reels 70, 72, 74, 76, 78 (shown inFIGS. 3-4). The video slot game utilizes a grid 80 in the display area64. The illustrated embodiment shows the state of displaying the displayarea 64 in the lower display 24. By using such a display area, thegaming machine 10 of the present embodiment operates as a slot machinethat pays a payout according to a winning combination of symbolsdisplayed on the display area 64.

The display unit 14 displays a plurality of game symbols in the grid 80.The grid 80 has a plurality of rows (r) and columns (c). The grid 80 isconfigured by a plurality of cells 82 that are the stop position ofsymbols. On each of the plurality of cells 82 of the display area 64,one symbol is stopped and displayed.

In the illustrated embodiment, the grid 80 is displayed with fifteencells 82 arranged in three rows and five columns, and the control unit20 generates five virtual reels 70, 72, 74, 76, 78 for use in displayingthe primary game 68. On each cell 82 of the grid 80, as shown in FIG. 3,a game symbol 84 is displayed based on the symbol arrangement of virtualreels including virtual reels 70, 72, 74, 76, 78 (also shown in FIG. 4)configured as a virtual reel set 86. That is, the cells 82 of the grid80 correspond to the virtual reels 70 to 78, by column, and the gamesymbols 84 disposed on predetermined parts of each virtual reels 70 to78 are displayed. In the illustrated embodiment, each of the virtualreels 70 to 78 displays multiple symbols within a corresponding columnwith the virtual reel in a stopped position. For example, as shown inFIG. 3, when stopped, each virtual reel 70 to 78 displays game symbolswithin each corresponding column. Furthermore, by moving (scrolling orspinning) each game symbol 84 by column based on the symbol arrangementof the virtual reels 70 to 78, the game symbols 84 displayed in thecells 82 of the grid 80 change, and by stopping the movement (scrollingor spinning) by columns, the game symbols 84 are stopped. Here, thevirtual reels 70 to 78 are data where the control unit 20 uses a programhaving the memory 42 or the storage 44, and data showing the symbolarrangement (i.e., the order of symbols on each reel strip) regulated byeach cell column. Further, the virtual reel set 86 is a general term forsuch virtual reels 70 to 78.

In some embodiments, the control unit 20 generates each virtual reel 70to 78 using reel strip data files 88 (shown in FIG. 11) and symbol imagedata files stored in memory 42 and/or storage 44. The reel strip datafile 88 includes a reel designation 90 associated with each virtual reel70 to 78 and sequential symbol position logic cells 92 associated witheach reel designation 90. Each symbol position logic cell 92 includesindicators for rendering the virtual reels with a plurality of gamesymbols. The reel strip data file 88 includes information associatedwith a plurality of reel strips 94, 96, 98, 100, 102 that correspond toeach virtual reel 70 to 78 and are used to generate virtual reel 70 to78. Each reel strip 94, 96, 98, 100, 102 includes a number of symbolpositions 104 configured to be populated by game symbols 84 that areselected from symbol image data files stored in memory 42 and/or storage44. The reel strips 94-102 also include reel stop positions 106associated with each symbol position 104. The symbol positions 104 andthe corresponding game symbols 84 are arranged in an order defined byeach reel strip 94, 96, 98, 100, 102. In addition, one or more reelstrips 94, 96, 98, 100, 102 includes a different number of symbolpositions 104.

In some embodiments, each reel strip 94, 96, 98, 100, 102, includes aplurality of fixed symbol positions 104 for displaying game symbols 84.Each fixed symbol position 104 includes instructions for displaying apredefined game symbol 84 selected from a set of game symbols 84included in a game symbol image data file. For example, for each play ofthe game, the fixed symbol positions 104 have an associated predefinedgame symbol 84 from a symbol set. The game symbol image data fileincludes the details of game symbols 84 populating the fixed symbolpositions 104 and includes varieties of game symbols 84. This symbol setincludes card symbols (“9”, “10”, “J”, “Q”, “K”, and “A”) that imitateplaying cards as regular symbols, and picture symbols (“PicA”, “PicB”,“PicC”, and “PicD”) that show a pattern. Further, this symbol setincludes a wild symbol (“Wild”) that is substituted as another symbolwhen a win combination is determined and a special symbol (“Special”)that may be used to determine if a game feature is to be provided. Eachof these symbols have a different rank from each other regarding theirvalue when winning, their rank gradually raises in this order: “9”,“10”, “J”, “Q”, “K”, “A”, “PicE”, “PicD”, “PicC”, “PicB”, “PicA”. Acombination of symbols that includes high-ranking symbols when winning,can obtain a larger winning payout compared to a combination oflow-ranking symbols when winning.

One or more of the reel strips 94, 96, 98, 100, 102 may also include aplurality of variable symbol positions 105 that display a varying innersymbol (“inner”). The variable symbol positions 105 are populated usinga variable symbol reel strip data file and/or a variable symbol weighttable. The variable symbol reel strip data file includes a variablesymbol reel strip that includes a number of symbol positions populatedby game symbols that are selected from game symbol image files, and stoppositions associated with each symbol position. When generating thevirtual reels 70 to 78, the control unit 20 is programmed to populatethe variable symbol positions 105 by randomly selecting game symbolsfrom the predefined group of symbols using the variable symbol reelstrip. For example, the control unit 20 may be programmed to randomlyselect a stop position of the variable symbol reel strip, select thesymbol position associated with the randomly selected stop position, andpopulate the variable symbol position 105 with the game symbol 84associated with the selected symbol position.

It should be noted that in one aspect of the present invention, one ormore dynamic virtual reel strips may be utilized. Using virtual reelstrips, the symbols and/or symbol positions and/or virtual reel stripsand/or length or size and/or any aspect of a virtual reel strip maychange from one spin or play to the next. For example, a dynamic reelstrip includes a plurality of symbol positions with symbols from thesymbol set and a plurality of variable symbol positions. The variablesymbol positions may be in the form of one or more stacks, i.e.,adjacent symbol positions. In one embodiment, the location and/or sizeof the stacks may change from one spin to the next, either randomlyand/or in a predetermined pattern.

Alternatively, a virtual reel strip associated with a column of cellsmay be dynamically changed from one spin or play to another spin orplay. This may occur randomly, every spin or play and/or in apredetermined pattern. It should be noted that in the illustratedembodiment, each column of the grid 80 has a corresponding reel. Whenthe reel stops, a symbol from the respective reel appears in each one ofthe cells of the respective column of the grid 80.

In general, the control unit 20 starts an instance of the primary game68 and determines the stop position of each virtual reels 70 to 78randomly using a reel stop position data file 108 (shown in FIG. 12)stored in the memory device. The virtual reels 70 to 78 that aredisplayed in the display unit 14 (for example, the lower display 24) aremoved from a current position and stopped based on a stop position toexpress an outcome of the primary game. Due to this, in the display orgrid 80, the symbols included on the virtual reels 70 to 78 arecontinuously moved (scrolled or spun) in a vertical direction of thedisplay area 64, and one symbol of one cell 82 is aligned in an order ofthe symbol based on the symbol arrangement is stopped so that it isdisplayed.

The control unit 20 changes and stops the plurality of symbols displayedon the display unit 14 according to the operation of the player receivedby the operation unit 32, and a payout may be paid according to thestopped symbols inside the display area 64 and a pay line set andpaytable data file 110 (show in FIG. 13) stored in the memory device.

In the display area 64, a pay line is set that is used when winning isdetermined. The pay line is set to be extended over the column on theright end from the cells of the column of the left end and is a linethat combines the plurality of cells 82 determining a win. The number ofeffective lines within the set pay line is selected by the operation ofa group of line designation buttons included in the group of settingbuttons 34 of the operation unit 32 for the player. The control unit 20,in regard to the result of a game that is a combination of symbols,determines a win when a predetermined number of identical symbols issurpassed and aligned on a set pay line, and pays a payout to the playeraccording to the type and number of symbols. The system for determininga win may determine a win when a predetermined number of identicalsymbols from cells of the column on the left end are aligned on a setpay line, may determine a win when a predetermined number of identicalsymbols from cells of the column on the right end are aligned on a setpay line, and may determine a win when a predetermined number ofidentical symbols are aligned on a continuous column on a predeterminedpay line. It should be noted that pay lines shown other than (or inaddition to) the pay lines shown in FIG. 13 may be used. In general, thepay lines start in the first column and end in the last column andinclude one cell per column. However, one or more pay lines couldinclude one or more cells in the same column and may include a verticalpay line.

In some embodiments, upon detecting the occurrence of the triggercondition occurring with the primary game, the control unit 20 executesa bonus feature event algorithm to display a bonus feature event. Forexample, upon detecting the occurrence of the trigger condition, thecontrol unit 20 may display additional game symbols and/or gameanimations on the game screen and/or transitions the game screen fromthe primary game to the bonus feature event.

Referring to FIGS. 5-8, in the illustrated embodiment, the memory 42stores a game application program 200 that includes computer executableinstructions that, when executed by the processor 38, cause theprocessor 38 to generate and display the game on the display unit 14 ofthe gaming machine 10. In one embodiment, the game application program200 includes program code 202 and program object data 204 that includescomputer executable instructions for implementing a game using thealgorithms shown in FIG. 14.

In the illustrated embodiment, the memory 42 stores the game applicationprogram 200 and a system application program 206 that includes computerexecutable instructions that, when executed by the processor 38, causethe processor 38 to generate and display the game on the display unit 14of the gaming machine 10. The game application program 200 provides gamespecific/front-end functions and the system application program 206program provides generic/back-end functions, when executed by theprocessor 38. In the illustrated embodiment, the game applicationprogram 200 and the system application program 206 are implemented onthe same operating system. However, it should be noted that theseprograms may be implemented on different operating system and/or bydifferent processors. In one embodiment, the game application program200 includes a plurality of software modules including abet/denomination/payline button listener module 208, a start buttonlistener module 210, a credit balance manager module 212, a samplingmanager 214, a random number generator 216, a comparison manager 218, agame result generator 220, a win evaluator 222, a game presenter 224, agame graphics presenter 226, a game sound presenter 228, a win indicator230, an award provider 232, an application manager 234, and an externalcommunicator 236. The game application program 200 may also include thereel strip data files, the symbol image data files, the variable symbolreel strip data files, the reel stop position data file, the creditprize symbol weight tables, the pay line set, and the paytable datafile.

The bet/denomination/payline button listener module 208 is a softwaremodule for receiving a signal from the bet button, the denominationbutton, or the payline button which is generated by the button when aplayer operates the button to select number of bet, denomination, ornumber of paylines. In response to receiving the signal, thebet/denomination/payline button listener module 208 communicates theoccurrence of the signal to application manager 234 for changing bet,denomination, or payline configuration of the game.

The start button listener module 210 is a software module for receivinga signal from the start button which is generated by the button when aplayer operates the button to start a game. In response to receiving thesignal, the start button listener module 210 communicates the occurrenceof the signal to application manager 234 for starting the game.

In response to receiving the signal from start button listener module210, the application manager 234 requests the sampling manager 214 toobtain necessary number of random numbers from the random numbergenerator 216.

The random number generator 216 generates random numbers based onpredetermined algorithm of computational random generation method. Therandom number generator 216 may be a pseudorandom generator. In responseto a request from sampling manager 214, the random number generator 216returns random number. In some implementations, the random numbergenerator 216 may be implemented in a central server. The random numbergenerator 216 may be implemented as an integrated circuit or hard wiredlogic.

The comparison manager 218 compares the current state of the game oreach random number with the reel strip data files, the symbol selectiondata files, the reel stop position data file, the pay line set, and/orthe paytable data file and specifies corresponding reel layout, stopposition, prize symbol, or trigger symbol based on each random number.

The game result generator 220 generates game result based on selectedreel layout, stop positions of each reel, and bonus features.

The win evaluator 222 evaluates the game result with reference to thepay table.\

The game presenter 224 provides game presentation process with visualand sound so as to form the predetermined game result finally.

The game graphics presenter 226 provides visual game presentationprocess on the display so as to form the predetermined game resultfinally.

The game sound presenter 228 provides sound presentation process byusing sound controller and speakers.

The win indicator 230 indicates win combinations and payment conditionof prize symbol formed in the game result.

The award provider 232 provides award credit to win meter based on thewin evaluation.

The application manager 234 administrates activity and status of eachsoftware module. In addition, the application manager 234 administratesconfiguration, progress and states of the game application program 200.

The external communicator 236 communicates instruction and data with thesystem application program 206.

The credit balance manager module 212 executes a process fordecrementing credit balance and incrementing credit balance based on winamount displayed in win meter.

In the illustrated embodiment, the system application program 206provides background processing and functions other than game specificfunctions. The system application program 206 includes a plurality ofsoftware modules including a system manager 238, a security manager 240,a slot management module 242, a denomination manager 244, a data logger246, a communications manager 248, a bill acceptor manager 250, ametering module 252, and a cashout manager 254.

The system application program 206 may also include a game recall file256, accounting logs 258, and meters 260.

The system manager 238 is a software module for administrating all ofthe background processing and functions other than game specificfunctions conducted by the system application program 206.

The security manager 240 is a software module for administrating gameverification, door security and monitoring security sensors.

The slot management module 242 is a software module for administratingdata accumulation and communicating with external slot informationsystem 62.

The denomination manager 244 is a software module for establishingdenomination setting of the gaming machine 10. The denomination settingmay include 1 cent, 2 cent, 5 cent, 25 cent, 1 dollar, 5 dollar and thelike.

The data logger 246 is a software module for logging result of eachprimary game and the free game bonus to the game recall. In addition,the data logger 246 stores error events, bill log, cashout log, ticketlog etc. to the accounting log.

The game recall file 256 is an accumulated data including results ofeach primary game and free game bonus. The game recall file 256 isstored in a non-volatile memory.

The accounting logs 258 is an accumulated data including error events,bill log, cashout log, ticket log etc. The accounting logs 258 arestored in a non-volatile memory.

The communications manager 248 is a software module for administratingcommunication between game application program 200 and systemapplication program 206. The communications manager 248 alsoadministrates network communication between system application program206 and external network such as slot management system network, G2Snetwork, gaming server for server based gaming network or VLT systemnetwork.

The bill acceptor manager 250 is a software module for administratingthe bill acceptor and receives bill information inserted in the billacceptor. In response to receiving the information from the billacceptor, the bill acceptor manager 250 communicates with the meteringfor incrementing credit balance based on the inserted bill.

The metering module 252 is a software module for adjusting values of themeters 260 in response to communication with the game applicationprogram 200 via communications manager 248, the bill acceptor manager250 or the cashout manager 254. The meters 260 includes a credit meterfor indicating current credit balance on the gaming machine and a winmeter for indicating win amount of current game session. The metersfurther include background meters such as coin-in, coin-out, total drop,attendant paid jackpots and/or bill-in. These meters might beimplemented as data on the non-volatile memory or hardware meters.

The cashout manager 254 is a software module for administrating cashoutprocedure. In response to a player's operation on the cashout button,the cashout manager 254 is activated and the gaming machine pay totalamount of the credit meter.

Referring to FIGS. 9 and 10, in one embodiment, the present inventionincludes a networked server computer system 300 that is configured todeliver the game to one or more client computing devices 302 over theInternet. In the illustrated embodiment, the networked computer system300 includes an iGaming server system 304 that is coupled incommunication with one or more client computing devices 302 via acommunications network 306. The communications network 306 may be anysuitable connection, including the Internet, an Intranet, LAN, a virtualprivate network (VPN), cellular networks, etc. . . . , and may utilizeany suitable or combination of technologies including, but not limitedto wired and wireless connections, always on connections, connectionsmade periodically, and connections made as needed.

The client computing device 302 may include any suitable device thatenables a user to access and communicate with the server system 300including sending and/or receiving information to and from the serversystem 300 and displaying information received from the server system300 to a user. In the illustrated embodiment, the client computingdevice 302 includes a processor coupled to a memory device. The memorydevice stores various programs and data that are executed by theprocessor for operating the client computing device 302. The clientcomputing device 302 also includes an input device configured to receiveoperational inputs from the user, and a display device configured todisplay a graphical user interface. The input device and display deviceenable a user to interact with the server system 300 via the clientcomputing device 302. For example, in one embodiment, the clientcomputing device 302 may include, but is not limited to, a desktopcomputer, a laptop or notebook computer, a tablet computer,smartphone/tablet computer hybrid, a personal data assistant, a handheldmobile device including a cellular telephone, and the like. In oneembodiment, the processor of the client computing device 302 may beprogrammed to function as the control unit 22 of the gaming machine 10.

In the illustrated embodiment, the client computing device may include aweb browser program stored in the memory device. The processor executesthe web browser program to display web pages on the display device thatincludes information received from the server system 300 to enable auser to interact with and operate the server system 300.

In one embodiment, the client computing device 302 includes a mobilecomputing device 308 (shown in FIG. 10) such as, for example, a tabletcomputer, a smartphone/tablet computer hybrid, a smartphone such as aniPhone™, and the like. The mobile computing device 308 includes aprocessor coupled to a memory device for storing various programs anddata for use in operating the mobile computing device 308. The mobilecomputing device 308 may also include a display unit 14 including atouchscreen, one or more video image cameras, one or more speakers, amicrophone, at least one input button, and one or more sensorsincluding, but not limited to, a touch ID fingerprint sensor coupled toan input button, a barometer, a three-axis gyro, an accelerometer,proximity sensor, and an ambient light sensor. In addition, the mobilecomputing device 308 may also include a Wi-Fi antenna, a cellularnetwork antenna, a Bluetooth™ communications device, assisted GPS andGLONASS, a digital compass, and an iBeacon™ microlocation device.

The mobile computing device 308 may be programmed to store and executemobile computer program applications that display graphical userinterfaces on the touchscreen display unit 14 including display area 64that allows the user to access the server system 300 to retrieve andstore information within the server system 300 as well as interact withand operate the server system 300. In addition, in one embodiment, theserver system 300 may install one or more mobile computer applicationprograms in the memory device of the mobile computing device 308. Wheninitiated by the processor of the mobile computing device 308, themobile computer application program causes the processor of the mobilecomputing device 308 to perform some or all of the functions of thegaming machine 10.

In the illustrated embodiment, the server system 300 includes one ormore remote gaming servers 310, one or more back-end servers 312, one ormore real money gaming website hosting servers 314, and one or moresocial gaming website hosting servers 316. In the illustratedembodiment, the social gaming website hosting server 316 and the realmoney gaming website hosting server 314 are programmed to host a websitethat is accessible by a user via one or more client computing devices302. The website hosting servers 314 and 316 execute a websiteapplication program that retrieves application code from the back-endserver 312 and executes the application code to render one or morewebpages on a display device of a client computing device 302 inresponse to requests received from the user via the client computingdevice 302 to allow users to interact with the website. The websitehosting servers 314 and 316 are configured to generate and displaywebpages displaying a game. For example, the real money gaming websitehosting server 314 is configured to host a real money wagering websitethat enables players to convert monetary funds to gaming credits thatmay be used to place wagers on the game. The social gaming websitehosting server 316 is configured to host a social media and/or socialgaming website that allows players to receive gaming credits foractivities such as purchasing goods and/or services through ane-commerce website, and/or purchase gaming credits that may be used toplay the game.

Each back-end server 312 is configured to perform operations to supportthe functions of the webpages and/or website being displayed by thewebsite hosting servers 314 and 316. For example, in one embodiment, theback-end servers 312 may include a player account system server that isconfigured to generate player accounts that include data associated witha player including, but not limited to, player identificationinformation, player financial account information, player gaming creditaccount information, and/or any suitable player information, that may beused to establish credit meters and allow players to place wagers on thegame.

Each remote gaming server 310 includes one or more copies of the gameapplication program 200 stored in a memory device of the remote gamingserver 310. A processor of the remote gaming server 310 is programmed toretrieve and transmit the game application program 200 to one or moreback-end servers 312 for use in displaying the game to the user via awebpage being displayed by the web browser program.

In one embodiment, the game application program 200 may includeinstructions for rendering the game and executing the game on the clientcomputing device 302. For example, the game application program 200 mayinclude instructions for generating rendered code, such as, for exampleHTML code, which may be used by the web browser program of the clientcomputing device 302 for displaying the game. For example, the gameapplication program 200 may include program software code including, butnot limited to, HTML, JavaScript, cascade style sheets (CSS), and anysuitable programming code that may be used for rendering and operatingthe game via a website and/or mobile computer application.

In one embodiment, upon receiving a request from the website hostingservers 314, 316 via the back-end server 312, the remote gaming server310 may execute the game application program 200 to operate the game andexecute a render-to-string operation to generate rendered codeindicative of the game, such as, for example HTML code, and transmit therendered code to the back-end server 312. The back-end server 312 maythen transmit the rendered code to the corresponding website hostingservers 314, 316 for use in displaying the game on the website. As theplayer plays the game, the remote gaming server 310 may execute the gameapplication program 200 for each instance of the game, and transitrendered code to the back-end servers 312.

In another embodiment, the remote gaming server 310 may transmit thegame application program 200 to the back-end server 312 and/or thewebsite hosting servers 314, 316. The back-end server 312 and/or thewebsite hosting servers 314, 316 may then execute the game applicationprogram 200 to initiate the instances of the game and executerender-to-string operations to generate rendered code indicative of thegame.

In yet another embodiment, the back-end server 312 may receive a requestto initiate the game from a mobile computing device 308 executing themobile computer application program. Upon receiving the request, theback-end server 312 may access the game application program 200 andexecute a render-to-string operation to generate rendered codeindicative of the game and transmit the rendered code to the mobilecomputing device 308. In one embodiment, the back-end server 312 maycontinuously execute the game application program 200 to generate eachinstance of the game using a random number generator of the back-endserver 312 based on input received from the mobile computing device 308and generate and transmit rendered code for each instance of the game tothe mobile computing device 308. In another embodiment, the back-endserver 312 may execute a partial-render operation and generatepartially-rendered code of the game using the game application program200 and transmit the partially rendered code of the game and object dataof game assets to the mobile computing device 308. The partiallyrendered code includes instructions for generating rendered code usingthe game assets and a random number generator of the mobile computingdevice for generating and displaying the game on the mobile computingdevice 308 using the mobile computer application program.

In one embodiment, the game application program 200 may be stored onseveral different servers. The game code on these servers is used todistribute game content to social or real money gaming websites andmobile applications. The distribution method is very flexible. Forexample, the game code and/or game application program 200 includinggame code and game object assets may be stored on a remote gaming server310. One remote gaming server 310 may be connected to one or moreback-end server 312.

Each back-end server 312 is configured to distribute the games to one ormore websites or mobile applications. Players connect to thesewebsites/mobile applications with the client devices or mobile devicesand have access to the game content. A copy of game application program200 including game code and game object assets is stored on the remotegaming server 310 for each back-end server 312 that is connected to theremote gaming server 310 and that distributes the game. For example, ifone remote gaming server 310 is connected to two back-end servers 312,which is connected to three website hosting servers 314, 316 thatdistribute the game, the remote gaming server 310 would store two copiesof the game application program 200 including game code and game objectassets for the game (e.g., one copy for each back-end server 312).

For example, the server system 300 may be configured to implement thegame on a mobile application such as, for example, “my KONAMI Slots™”mobile application available in Apple iOS™, Google Android™, and AmazonKindle™ operating platforms, or on social-media websites such as the “myKONAMI Slots™” available on Facebook™. In one embodiment, the mobileapplication may download the game code from remote gaming server 310 viathe real money gaming site 314 or the social gaming site 316 and executethe game code on the client computing device 302. In this embodiment,the game code may provide game specific/front-end function when executedby the processor of the client computing device, and the back end system312 may provide generic/back-end function.

FIG. 14 is a flow chart of method 400 illustrating the algorithmsincluded in the game application program 200 and performed by theprocessor 38 when executing the game application program 200 foroperating the gaming machine 10 and/or iGaming server system 300 toimplement the game. The methods include a plurality of steps. Eachmethod step may be performed independently of, or in combination with,other method steps. Portions of the methods may be performed by any oneof, or any combination of, the components of the gaming machine 10and/or iGaming server system 300.

In the illustrated embodiment, the game application program 200 includescomputer instructions for generating the primary game 68 and the bonusfeature event. In general, the bonus feature event is executed when atriggering event is detected during the primary game 68. In oneembodiment, the primary game 68 includes a reel-type game that includesa plurality of virtual reels that spin and stop to display the outcomesof the primary game. In other embodiments, the primary game 68 mayinclude a playing card game, a bingo game, a Keno game, and/or anysuitable casino type wagering game.

In the illustrated embodiment, the control unit 20 is programmed toexecute the algorithm illustrated in method 400 for executing the gameand displaying the game on the display unit 14. In method step 402, theprocessor 38 of the control unit 20 generates the virtual reels 70-78for use with an instance of the primary game 68 and displays the virtualreels 70-78 in the grid 80.

In method step 404, the processor 38 receives a signal to initiate aninstance of the game 66 and generates the virtual reels 70-78 for useduring the instance of the game 66. For example, the processor 38 mayreceive a signal from the display unit 14 and/or the operation unit 32indicating a player's request to initiate an instance or play of thegame 66. In one embodiment, the player may transmit a request toinitiate an instance or play of game 66 by depressing a corresponding“spin” button on the operation unit 32 by touching a correspondingbutton icon being displayed on a touchscreen of the display unit 14.Upon receiving a signal from the display unit 14 and/or the operationunit 32, the processor 38 initiates the instance of the game 66 bygenerating the virtual reels 70-78 for use in the primary game 68.

In method steps 406-416, the processor 38 randomly determines an outcomeof an instance of the primary game 68 and spins the virtual reels 70 to78 and sequentially stops the virtual reels 70 to 78 to display therandomly generated outcome including a game symbol being displayed ineach cell 82 of the grid 80. For example, in one embodiment, theprocessor 38 starts spinning each virtual reel 70 to 78, obtains randomnumbers from the random number generator, and determines a stop positionof each virtual reel 70 to 78 based on the random numbers and the reelstop position data file 108. In the illustrated embodiment the reel stopposition data file 108 includes a range of random numbers associatedwith each symbol position in the sequence of symbol positions associatedwith the virtual reel. In one embodiment, the processor may obtain arandom number for each simulate virtual reel 70 to 78, i.e., five randomnumbers. The processor 38 then establishes a reel stop counter, “i”, andsets the reel stop counter, i, equal to 1. The processor 38 thenidentifies the i^(th) virtual reel strip associated with the stopcounter, i, and stops the identified virtual reel strip to display thecorresponding symbols in the corresponding cells 82 associated with theidentified virtual reel strip. The processor 38 then increments the reelstop counter, i, by 1, i.e., i=i+1, and repeats the process ofidentifying the virtual reel strip associated with the incremented reelstop counter and stopping the identified virtual reel. This processcontinues until each virtual reel has been stopped. In this embodiment,for example, the virtual reels are numbered 1-5. In one embodiment,during the reel spin, the player may initiate the stopping of the reelsby depressing the spin button, which enables the player to accelerategame play.

In method step 418, the processor 38 determines whether a triggercondition has been detected in the outcome of the primary game 68. If atrigger condition is detected during the primary game 68, the processor38 initiates the bonus feature event in method step 420.

In method step 422, upon completion of the primary game 68 and/or thebonus feature event, the processor 38 determines and provides any awardassociated with the outcome of the primary game 68 and/or the bonusfeature event. For example, the processor 38 may determine whether anywinning combination of symbols is displayed in the outcome of theinstance of the primary game 68 and/or the bonus feature event providean award by increasing a balance of the credit meter based on the amountof the award.

FIG. 15 is a flow chart of method 500 illustrating the algorithmsincluded in the game application program 200 and performed by theprocessor 38 when executing the game application program 200 foroperating the gaming machine 10 and/or iGaming server system 300 toimplement the game. The methods include a plurality of steps. Eachmethod step may be performed independently of, or in combination with,other method steps. Portions of the methods may be performed by any oneof, or any combination of, the components of the gaming machine 10and/or iGaming server system 300.

In the illustrated embodiment, as shown in FIGS. 15-23, the gameapplication program 200 includes computer instructions for providing theBATTLEBOTS™ slot game offered by Konami Gaming™ Inc. which displays theXL Symbol™ feature. The XL Symbol™ feature includes an oversized symbol112 being displayed across a plurality of reels that are coupledtogether to enable the reels to spin and stop together to facilitatedisplaying the oversized symbol 112. The coupled reels includes avariable symbol position group extending across each of the adjacentcoupled reels that is used to display the oversized symbol 112. Forexample, the control unit 20 is programmed to execute the algorithmillustrated in method 500 for executing and displaying the game 66 onthe game screen 64 shown on the display unit 14.

As shown in FIGS. 21-23, the game 66 is displayed on the game screen 64including a plurality of reels 70, 72, 74, 76, 78 being displayed in thegrid 80 including a plurality of cells 82 arranged in a plurality ofrows (r) and a plurality of columns (c). In some embodiment, the game 66may include 5 reels with each reel being displayed in a correspondingcolumn (c).

Referring to FIGS. 15-23, in method step 502, the processor 38 initiatesan instance of the game 66 by randomly selects a reel set 114 from aplurality of reel sets 114. For example, in some embodiments, uponreceiving a signal from the operation unit 32 indicating the player haspressed the “spin button” to initiate an instance of the game, theprocessor 38 may access a reel set selection file 116 that includesinformation associated with a plurality of reel sets 114. For example,in some embodiments, the reel set selection file 116 may include dataassociated with each reel set 114 including a reel set ID, a reel setdefinition including computer-executable instructions for generating thereels, and a selection weight. The processor 38 randomly selects a reelset 114 from the reel set selection file 116 based on the correspondingselection weight associated with each reel set 114.

Upon randomly selecting a reel set 114, the processor 38 may access areel set data file 118 (shown in FIG. 16) that includes instructions forgenerating and displaying reels 70-78 based on the selected reel set114. The reel set data file 118 includes instructions associated with aplurality of reel sets 114. Each reel set 114 includes reel strips 94,96, 98, 100, 102 that correspond to each virtual reel 70 to 78 andincludes one or more groups of adjacent coupled reels 120. Each group ofadjacent coupled reels 120 are configured to spin and stop togetherduring an instance of the game 66. A reel set 114 may also include oneor more non-coupled reels 122 that are configured to spin and stopindependently from the group of adjacent coupled reels 120.

In the illustrated embodiment, each group of adjacent coupled reels 120includes one or more variable symbol position groups 124 that extendacross each reel included in the group of adjacent coupled reels 120.Each variable symbol position group 124 includes adjacent columns ofvariable symbol positions 105 and at least two adjacent rows of variablesymbol positions 105. The variable symbol positions 105 display avarying inner symbol (“inner”) that are populated using a variablesymbol reel strip data file 126 (shown in FIG. 18). The variable symbolreel strip data file 126 includes a plurality of special symbols 128 andselection weight associated with each special symbol 128.

In some embodiments, the reel set selection file 116 and reel set datafile 118 may include instructions associated with ten different reelsets 114 (e.g., ReelSet01, ReelSet02, ReelSet03, ReelSet04, ReelSet05,ReelSet06, ReelSet07, ReelSet08, ReelSet09, and ReelSet10). Each reelset 114 includes a different group of adjacent coupled reels 120. Forexample, as shown in FIG. 16, ReelSet01 includes a group of adjacentcoupled reels 120 including Reel 1 (R1) and Reel 2 (R2) that are coupledtogether to spin and stop together during an instance of the game 66.ReelSet01 also includes two variable symbol position groups 124, witheach of the variable symbol position groups 124 including two adjacentcolumns of variable symbol positions 105 extending across coupled reelsReel 1 (R1) and Reel 2 (R2), and two adjacent rows of variable symbolpositions 105. ReelSet01 also includes three non-coupled reels 122including Reel 3 (R3), Reel 4 (R4), and Reel 5 (R5). Each of thenon-coupled reels 122 are configured to spin and stop independently fromthe group of adjacent coupled reels 120 and independently from the othernon-coupled reels 122.

As an example, the plurality of reel sets 114 may include a first reelset including two adjacent coupled reels and a second reel set includingthree adjacent coupled reels. For example, ReelSet05 includes a firstgroup of adjacent coupled reels 130 that includes Reel 1 (R1) and Reel 2(R2) coupled together and a second group of adjacent coupled reels 132that includes Reel 4 (R4) and Reel 5 (R5) coupled together. ReelSet05also includes Reel 3 (R3) as a non-coupled reel 122 positioned betweenthe first group of adjacent coupled reels 130 and the second group ofadjacent coupled reels 132. The non-coupled Reel 3 (R3) is configured tospin independently of the first and second groups of coupled reels.ReelSet06 includes a group of adjacent coupled reels 120 including threeadjacent coupled reels, Reel 1 (R1), Reel 2 (R2), and Reel 3 (R3)coupled together, with Reels 4 (R4) and Reel 5 (R5) as non-coupled reels122. ReelSet06 also includes a variable symbol position group 124 thatincludes three adjacent columns of variable symbol positions 105extending across coupled reels Reel 1 (R1), Reel 2 (R2), and Reel 3(R3), and three adjacent rows of variable symbol positions 105.ReelSet09 includes a group of adjacent coupled reels 120 that includesReel 1 (R1), Reel 2 (R2), Reel 3 (R3), and Reel 4 (R4) coupled together,with Reel 5 (R5) as a non-coupled reel 122. ReelSet09 also includes avariable symbol position group 124 that includes four adjacent columnsof variable symbol positions 105 extending across the coupled reels Reel1 (R1), Reel 2 (R2), Reel 3 (R3), and Reel 4 (R4) and four adjacent rowsof variable symbol positions 105.

In method step 504, upon randomly selecting a reel set 114, theprocessor 38 may then randomly select a special symbol 128 to bedisplayed in the variable symbol position group 124 of the selected reelset 114. The randomly selected special symbol 128 is displayed in eachvariable symbol position 105 of the variable symbol position group 124.For example, in some embodiments, the processor 38 may access thevariable symbol reel strip data file 126 that includes a plurality ofspecial symbols 128 and selection weight associated with each specialsymbol 128. The processor 38 then randomly selects a special symbol 128based on the corresponding selection weights included in the variablesymbol reel strip data file 126 and populates each variable symbolposition 105 of the variable symbol position group 124 with the randomlyselected special symbol 128.

In some embodiments, the selected reel set 114 may include a group ofadjacent coupled reels 120 that includes two or more variable symbolposition groups 124. For example, as shown in FIG. 16, the processor 38may randomly select reel set ReelSet01 from the reel set selection file116, which includes a group of adjacent coupled reels 120 including afirst variable symbol position group 134 and a second variable symbolposition group 136. The processor 38 then accesses the variable symbolreel strip data file 126 and randomly select a first special symbol 128for the first variable symbol position group 134 and a second specialsymbol 128 for the second variable symbol position group 136. Becausethe processor 38 randomly selects a special symbol 128 for each of thefirst and second variable symbol position groups 134, 136, the processormay randomly select a different special symbol for the first variablesymbol position group 134 and the second variable symbol position group136, or the processor 38 may randomly select the same special symbol forthe first variable symbol position group 134 and the second variablesymbol position group 136.

In some embodiments, the selected reel set 114 may include two groups ofadjacent coupled reels 120. For example, as shown in FIG. 16, theprocessor 38 may randomly select reel set ReelSet05 from the reel setselection file 116, which includes a first group of adjacent coupledreels 130 that includes Reel 1 (R1) and Reel 2 (R2) coupled together,and a second group of adjacent coupled reels 132 that includes Reel 4(R4) and Reel 5 (R5) coupled together. The first group of adjacentcoupled reels 130 may include a first variable symbol position group 134with the second group of adjacent coupled reels 132 including a secondvariable symbol position group 136. The processor 38 then accesses thevariable symbol reel strip data file 126 and randomly selects adifferent special symbol 128 for the first variable symbol positiongroup 134 and the second variable symbol position group 136.

Upon randomly selecting the special symbol 128 being displayed in eachvariable symbol position 105 of the variable symbol position group 124,the processor 38 then selects an oversized symbol 112 (shown in FIGS.19-20) that is associated with the randomly selected special symbol 128.The oversized symbol 112 is sized and shaped to overlay each variablesymbol position 105 of the variable symbol position group 124. Forexample, as shown in FIG. 19, upon the processor 38 selecting a reel set114 that includes a group of adjacent coupled reels 120 having avariable symbol position group 124 that includes two columns and tworows of variable symbol positions 105, the processor 38 then selects anoversized symbol 112 that is sized and shaped to overlay the two columnsand two rows of variable symbol positions 105. Similarly, as shown inFIG. 20, if the processor 38 selects a reel set 114 that includes agroup of adjacent coupled reels 120 having a variable symbol positiongroup 124 that includes three columns and three rows of variable symbolpositions 105, the processor 38 then selects an oversized symbol 112that is sized and shaped to overlay the three columns and three rows ofvariable symbol positions 105. In some embodiments, the oversized symbol112 may also include a similar image appearance as the special symbols128 displayed in the variable symbol position group 124, such that theoversized symbol 112 appears to be a larger version of the selectedspecial symbol 128. In other embodiments, the oversized symbol 112 mayappear as a different symbol image such as, for example, a “wild”symbol.

In method step 506, the processor 38 determines a number of groups ofadjacent coupled reels included in the randomly selected reel set 114.For example, because some of the reels included in the selected reel setare coupled together such that the adjacent coupled reels spin and stoptogether, the processor 38 is not required to select stop positions foreach of the reels. In this case, the processor 38 is programmed todetermine a number of groups of adjacent coupled reels included in therandomly selected reel set 114, select a number of stop positionselections based on the number of groups of adjacent coupled reels 120,and randomly select a stop position for each of the number of stopposition selections which is used to stop the plurality of reels basedon the selected stop positions. In some embodiments, the processor 38may access the reel set selection file 116 that includes a number ofstop position selections 138 associated with each reel set ID 118. Uponrandomly selecting a reel set 114 from the reel set selection file 116,the processor 38 then determines the number of stop position selections138 associated with the selected reel set 114 and randomly selects astop position 106 for each of the number of stop position selections 138associated with the selected reel set 114.

In method step 508, the processor 38 animates the plurality of reels tospin and stop such that the group of adjacent coupled reels 120 spinsand stops together and the oversized symbol 112 is displayed overlayingthe variable symbol position group 124. For example, as shown in FIG.22, the processor 38 will spin the reels to initiate an instance of thegame 66 such that the group of adjacent coupled reels 120 spins togetherand the non-coupled reel 122 spins independently of the group ofadjacent coupled reels 120. The processor 38 may the stop the reelsfirst from left to right, with the group of adjacent coupled reels 120stopping together and the non-coupled reel 122 stopping independently ofthe group of adjacent coupled reels 120. In this way, by spinning andstopping the group of adjacent coupled reels 120 in unison, theprocessor 38 is able to properly display the oversized symbol 112 acrossthe adjacent coupled reels 120.

In method step 510, the processor 38 determines whether an oversizedsymbol 112 is being displayed on the game screen 64 with the reelsstopped.

In method step 512, upon detecting the oversized symbol 112 beingdisplayed on the game screen 64 with the reels stopped, the processor 38animates the oversized symbol 112 to reveal the special symbols 128displayed in the variable symbol position group 124. For example, asshown in FIG. 23, if the oversized symbol 112 is displayed on the gamescreen 64 with the reels stopped, the processor 38 may the animateoversized symbol 112 to reveal the special symbol 128 being displayed ineach variable symbol position 105 of the variable symbol position group124. In this way, by animating the oversized symbol 112 to reveal theunderlying special symbols 128, the processor 38 is able to display awinning outcome of symbols on the game screen.

Exemplary embodiments of a gaming device, a gaming system, and a methodof providing an award to a player are described above in detail. Thegaming device, system, and method are not limited to the specificembodiments described herein, but rather, components of the gamingdevice and/or system and/or steps of the method may be utilizedindependently and separately from other components and/or stepsdescribed herein. For example, the gaming device may also be used incombination with other gaming systems and methods and is not limited topractice with only the gaming device as described herein. Rather, anexemplary embodiment can be implemented and utilized in connection withmany other gaming system applications.

A controller, computing device, or computer, such as described herein,includes at least one or more processors or processing units and asystem memory. The controller typically also includes at least some formof computer readable media. By way of example and not limitation,computer readable media may include computer storage media andcommunication media. Computer storage media may include volatile andnonvolatile, removable and non-removable media implemented in any methodor technology that enables storage of information, such as computerreadable instructions, data structures, program modules, or other data.Communication media typically embody computer readable instructions,data structures, program modules, or other data in a modulated datasignal such as a carrier wave or other transport mechanism and includeany information delivery media. Those skilled in the art should befamiliar with the modulated data signal, which has one or more of itscharacteristics set or changed in such a manner as to encode informationin the signal. Combinations of any of the above are also included withinthe scope of computer readable media.

The order of execution or performance of the operations in theembodiments of the invention illustrated and described herein is notessential, unless otherwise specified. That is, the operations describedherein may be performed in any order, unless otherwise specified, andembodiments of the invention may include additional or fewer operationsthan those disclosed herein. For example, it is contemplated thatexecuting or performing a particular operation before, contemporaneouslywith, or after another operation is within the scope of aspects of theinvention.

In some embodiments, a processor, as described herein, includes anyprogrammable system including systems and microcontrollers, reducedinstruction set circuits (RISC), application specific integratedcircuits (ASIC), programmable logic circuits (PLC), and any othercircuit or processor capable of executing the functions describedherein. The above examples are exemplary only, and thus are not intendedto limit in any way the definition and/or meaning of the term processor.

This written description uses examples to disclose the invention,including the best mode, and also to enable any person skilled in theart to practice the invention, including making and using any devices orsystems and performing any incorporated methods. The patentable scope ofthe invention is defined by the claims, and may include other examplesthat occur to those skilled in the art. Other aspects and features ofthe present invention can be obtained from a study of the drawings, thedisclosure, and the appended claims. The invention may be practicedotherwise than as specifically described within the scope of theappended claims. It should also be noted that the steps and/or functionslisted within the appended claims, notwithstanding the order of whichsteps and/or functions are listed therein, are not limited to anyspecific order of operation.

Although specific features of various embodiments of the invention maybe shown in some drawings and not in others, this is for convenienceonly. In accordance with the principles of the invention, any feature ofa drawing may be referenced and/or claimed in combination with anyfeature of any other drawing.

What is claimed is:
 1. A gaming machine for providing a game,comprising: a cabinet; a display device mounted to the cabinet; acontrol unit operably coupled to the display device, the control unitincluding a processor programmed to execute an algorithm including thesteps of: displaying a game screen on the display device including aplurality reels, each reel displaying a plurality of symbols; andinitiating an instance of the game by: randomly selecting a reel setfrom a plurality of reel sets, the selected reel set including a groupof adjacent coupled reels that spin and stop together, the group ofadjacent coupled reels including a variable symbol position groupextending across each of the adjacent coupled reels, the variable symbolposition group including adjacent columns of variable symbol positionsand at least two adjacent rows of variable symbol positions; randomlyselecting a special symbol displayed in the variable symbol positiongroup, the special symbol being displayed in each variable symbolposition of the variable symbol position group; selecting an oversizedsymbol associated with the special symbol; and animating the pluralityof reels to spin and stop such that the group of adjacent coupled reelsspins and stops together and the oversized symbol is displayedoverlaying the variable symbol position group.
 2. The gaming machine ofclaim 1, wherein the processor is programmed to execute the algorithmincluding the steps of: detecting the oversized symbol being displayedon the game screen with the reels stopped and animating the oversizedsymbol to reveal the special symbols displayed in the variable symbolposition group.
 3. The gaming machine of claim 1, wherein the processoris programmed to execute the algorithm including the steps of:determining a number of groups of adjacent coupled reels included in therandomly selected reel set; selecting a number of stop positionselections based on the number of groups of adjacent coupled reels;randomly selecting a stop position for each of the number of stopposition selections; and stopping the plurality of reels based on theselected stop positions.
 4. The gaming machine of claim 1, wherein theselected reel set includes a non-coupled reel configured to spinindependently of the group of adjacent coupled reels.
 5. The gamingmachine of claim 1, wherein the group of adjacent coupled reels includesa first variable symbol position group and a second variable symbolposition group, the processor is programmed to execute the algorithmincluding the steps of: randomly selecting a different special symbolfor the first variable symbol position group and the second variablesymbol position group.
 6. The gaming machine of claim 1, wherein theselected reel set includes a first group of adjacent coupled reelsincluding a first variable symbol position group and a second group ofadjacent coupled reels including a second variable symbol positiongroup, the processor is programmed to execute the algorithm includingthe steps of: randomly selecting a different special symbol for thefirst variable symbol position group and the second variable symbolposition group.
 7. The gaming machine of claim 6, wherein the selectedreel set includes a non-coupled reel positioned between the first groupof adjacent coupled reels and the second group of adjacent coupledreels, the non-coupled reel configured to spin independently of thefirst and second groups of coupled reels.
 8. The gaming machine of claim1, wherein the plurality of reel sets includes a first reel setincluding two adjacent coupled reels and a second reel set includingthree adjacent coupled reels.
 9. A method of operating a gaming machineincluding a display device mounted to a cabinet and a processor operablycoupled to the display device, the method including the processorperforming an algorithm including the steps of: displaying a game screenon the display device including a plurality reels, each reel displayinga plurality of symbols; and initiating an instance of the game by:randomly selecting a reel set from a plurality of reel sets, theselected reel set including a group of adjacent coupled reels that spinand stop together, the group of adjacent coupled reels including avariable symbol position group extending across each of the adjacentcoupled reels, the variable symbol position group including adjacentcolumns of variable symbol positions and at least two adjacent rows ofvariable symbol positions; randomly selecting a special symbol displayedin the variable symbol position group, the special symbol beingdisplayed in each variable symbol position of the variable symbolposition group; selecting an oversized symbol associated with thespecial symbol; and animating the plurality of reels to spin and stopsuch that the group of adjacent coupled reels spins and stops togetherand the oversized symbol is displayed overlaying the variable symbolposition group.
 10. The method of claim 9, including the processorperforming the algorithm including the steps of: detecting the oversizedsymbol being displayed on the game screen with the reels stopped andanimating the oversized symbol to reveal the special symbols displayedin the variable symbol position group.
 11. The method of claim 9,including the processor performing the algorithm including the steps of:determining a number of groups of adjacent coupled reels included in therandomly selected reel set; selecting a number of stop positionselections based on the number of groups of adjacent coupled reels;randomly selecting a stop position for each of the number of stopposition selections; and stopping the plurality of reels based on theselected stop positions.
 12. The method of claim 9, wherein the selectedreel set includes a non-coupled reel configured to spin independently ofthe group of adjacent coupled reels.
 13. The method of claim 9, whereinthe group of adjacent coupled reels includes a first variable symbolposition group and a second variable symbol position group, the methodincluding the processor performing the algorithm including the steps of:randomly selecting a different special symbol for the first variablesymbol position group and the second variable symbol position group. 14.The method of claim 9, wherein the selected reel set includes a firstgroup of adjacent coupled reels including a first variable symbolposition group and a second group of adjacent coupled reels including asecond variable symbol position group, the method including theprocessor performing the algorithm including the steps of: randomlyselecting a different special symbol for the first variable symbolposition group and the second variable symbol position group.
 15. Themethod of claim 14, wherein the selected reel set includes a non-coupledreel positioned between the first group of adjacent coupled reels andthe second group of adjacent coupled reels, the non-coupled reelconfigured to spin independently of the first and second groups ofcoupled reels.
 16. The method of claim 9, wherein the plurality of reelsets includes a first reel set including two adjacent coupled reels anda second reel set including three adjacent coupled reels.
 17. Anon-transitory computer-readable storage media havingcomputer-executable instructions embodied thereon to operate a gamingmachine including a display device mounted to a cabinet and a processoroperably coupled to the display device, when executed by the processorthe computer-executable instructions cause the processor to perform analgorithm including the steps of: displaying a game screen on thedisplay device including a plurality reels, each reel displaying aplurality of symbols; and initiating an instance of the game by:randomly selecting a reel set from a plurality of reel sets, theselected reel set including a group of adjacent coupled reels that spinand stop together, the group of adjacent coupled reels including avariable symbol position group extending across each of the adjacentcoupled reels, the variable symbol position group including adjacentcolumns of variable symbol positions and at least two adjacent rows ofvariable symbol positions; randomly selecting a special symbol displayedin the variable symbol position group, the special symbol beingdisplayed in each variable symbol position of the variable symbolposition group; selecting an oversized symbol associated with thespecial symbol; and animating the plurality of reels to spin and stopsuch that the group of adjacent coupled reels spins and stops togetherand the oversized symbol is displayed overlaying the variable symbolposition group.
 18. The non-transitory computer-readable storage mediaof claim 17, wherein the computer-executable instructions cause theprocessor to perform the algorithm including the steps of: detecting theoversized symbol being displayed on the game screen with the reelsstopped and animating the oversized symbol to reveal the special symbolsdisplayed in the variable symbol position group.
 19. The non-transitorycomputer-readable storage media of claim 17, wherein thecomputer-executable instructions cause the processor to perform thealgorithm including the steps of: determining a number of groups ofadjacent coupled reels included in the randomly selected reel set;selecting a number of stop position selections based on the number ofgroups of adjacent coupled reels; randomly selecting a stop position foreach of the number of stop position selections; and stopping theplurality of reels based on the selected stop positions.
 20. Thenon-transitory computer-readable storage media of claim 17, wherein theselected reel set includes a first group of adjacent coupled reelsincluding a first variable symbol position group and a second group ofadjacent coupled reels including a second variable symbol positiongroup, the computer-executable instructions cause the processor toperform the algorithm including the steps of: randomly selecting adifferent special symbol for the first variable symbol position groupand the second variable symbol position group.